<?php
/*
 * [JINYUN!] (C)2001-2099 Jinyunweb.com
 * This is NOT a freeware, use is subject to license terms
 * $Id: 2017-12-13 03:39:35 apple $
*/
defined('BY_JYA') or exit('error');
$_RQ['op']=$_RQ['op']?$_RQ['op']:'get';
$return=array();
if($_RQ['op']=='get'){
	$item=uni_setting('pay');
	$return['wechats']=pdo_getall('core_account_wechat',array('uniacid'=>$_SESSION['uniacid']),array('appid','title'));
	$return['wechat_types']=array(
		'0'=>'普通商户支付',
		'1'=>'服务商支付',
		'2'=>'纯小程序支付',
	);
	$return['types']=get_form_types();
	$item['types']=$return['types'];
	
	$account_host=get_account_url();
	$account_tp=str_replace('http://','',$account_host).'custom/';
	$account_apitp=str_replace('http://','',$account_host).'app/';
	$account_url=str_replace('http://','',$account_host).'custom/payresult/wechat_notify.php';
	$account_url2=str_replace('http://','',$account_host).'custom/payresult/alipay_notify.php';
	$pay_back=custom_url('core/member.pay_back/',true);
	$pay_backpath=SITEROOT.'custom/';
	//检查证书是否上传
	$cert_remark=$key_remark='（待上传）';
	if($item['wechat_mchid']){
		if(is_file(ROOT_AT."certs/{$_SESSION['uniacid']}/{$item['wechat_mchid']}_cert.pem")){
			$cert_remark='（已上传）';
			$item['cert_file']=SITEROOT.RESOURCE."/certs/{$_SESSION['uniacid']}/{$item['wechat_mchid']}_cert.pem";
		}
		if(is_file(ROOT_AT."certs/{$_SESSION['uniacid']}/{$item['wechat_mchid']}_key.pem")){
			$item['key_file']=SITEROOT.RESOURCE."/certs/{$_SESSION['uniacid']}/{$item['wechat_mchid']}_key.pem";
			$key_remark='（已上传）';
		}
		if(is_file(ROOT_AT."certs/{$_SESSION['uniacid']}/{$item['wechat_mchid']}_paypublic_key.pem")){
			$item['paykey_file']=SITEROOT.RESOURCE."/certs/{$_SESSION['uniacid']}/{$item['wechat_mchid']}_paypublic_key.pem";
			$key_remark='（已上传）';
		}
	}
	$return['item']=$item?$item:array();
	if(check_permission('jy_weishop')){
		$item['jy_weishop']=1;
		$coupons=pdo_getall('jy_weishop_coupon',array('uniacid'=>$_SESSION['uniacid'],'merchid'=>0),array('id','title'));
		$return['coupons']=array();
		foreach($coupons as $v){
			$return['coupons'][$v['id']]=$v['title'];
		}
		$coupons=pdo_getall('jy_weishop_wxcard',array('uniacid'=>$_SESSION['uniacid'],'card_type'=>'CASH'),array('id','title'));
		foreach($coupons as $v){
			$return['coupons'][$v['id'].'w']=$v['title'].'(微信券)';
		}
	}
	$install = check_permission('jy_alipay');
	$alipaytip=$install?'已安装《支付宝接口》插件，可以使用支付宝支付功能！</br>1、移步支付宝开放平台：https://openhome.alipay.com/ 选择开发者身份登录；</br>2、创建应用（网页&移动应用）；</br>3、应用信息--获取密钥信息，设置白名单！</br>4、另：《<red>e签宝电子合同</red>》，《<red>芝麻信用免押</red>》会用到；需要前往开发中心（https://open.alipay.com/）创建【网页应用】！<br>5、JSAPI支付授权目录：'.$account_tp.'，兼容插件支付授权目录：'.$account_apitp.'<br>6、扫码回调链接：'.$account_url2.'<br>7、openid配置管理--选择默认的open_id模式；':'【<red>温馨提示</red>】：<red>必须安装《支付宝接口》插件才行！</red>;';
	$htmls=array(
		'type'=>'edit',
		'post'=>'post',
		'desc'=>'设置支付参数',
		'edit_tab'=>true,
		'edits'=>array(
			array(
				'title'=>'余额支付',
				'list'=>array(
					array('type'=>'switch','title'=>'货到付款','name'=>'hdfk'),
					array('type'=>'switch','title'=>'余额支付','name'=>'credit','help'=>'关闭余额支付时，充值功能也将关闭！'),
					array('type'=>'switch','title'=>'关闭充值','name'=>'norecharge','show'=>array('credit'=>1)),
					array('type'=>'switch','title'=>'关闭组合支付？','name'=>'credit2_nodi','isradio'=>1),
					array('type'=>'switch','title'=>'余额支持转账？','name'=>'credit2_zhuan'),
					array('type'=>'unitstring','unit'=>'%','title'=>'余额支付比例','name'=>'credit2_dirate','help'=>'留空表示可全额支付！'),
					array('type'=>'unitstring','unit'=>'%','title'=>'充值直推分润','name'=>'credit2_tuiper','help'=>'留空表示不支持！分润直接发放到现金余额红包'),
					array('type'=>'array','title'=>'余额充值赠送设置','name'=>'credit_activitys','add_tip'=>'添加一个赠送',
							'list'=>array(
								array('type'=>'unitstring','unit'=>'元','name'=>'condition','title'=>'充值金额'),
								array('type'=>'unitstring','unit'=>'元','name'=>'money','title'=>'赠送金额'),
								array('type'=>'unitstring','unit'=>'天','name'=>'day','title'=>'分N天赠送'),
							),
							'details'=>array(
								array('type'=>'unitstring','unit'=>'元','name'=>'condition','title'=>'金额'),
								array('type'=>'unitstring','unit'=>'元','name'=>'money','title'=>'最终返额'),
								array('type'=>'unitstring','unit'=>'天','name'=>'day','title'=>'分N天赠送'),
								array('type'=>'checkbox','name'=>'couponids','title'=>'送优惠券','options'=>'coupons','help'=>'读取的商城优惠券(如果优惠券数量已满，将赠送失败)'),
								array('type'=>'unitstring','unit'=>'个','name'=>'couponnum','title'=>'送优惠券数量'),
							)
					),
					array('type'=>'link','from'=>'action','title'=>'充值页面跳转','name'=>'credit2_czlink','help'=>'方便统一余额充值页面：这里可以指定应用自身的充值页面！'),
					array('type'=>'switch','title'=>'启用随机减免额？','name'=>'jianfee_open','help'=>'启用后，可以随机减免0.1元，0.X元，方便一些特殊场景'),
					array('type'=>'string_two','title'=>'减免额度','title1'=>'下限额','title2'=>'上限额','name1'=>'jianfee_min','name2'=>'jianfee_max')
			)),
			array(
				'title'=>'微信支付',
				'list'=>array(
					array('type'=>'tip','title'=>'【<red>温馨提示</red>】：
					</br>1、一定要在微信支付商户后台配送好微信支付的回调域名，否则不能正常支付回调！
					<br>2、JSAPI支付授权目录：'.$account_tp.'，兼容插件支付授权目录：'.$account_apitp.'
					<br>3、扫码回调链接：'.$account_url.'
					<br>4、微信支付商户的密钥不对，也可能导致支付回调异常（支付成功后：可能订单状态还是未支付）。
					<br>5、商家小票链接（子商户支付完成跳转链接）：'.$pay_back.'，验证文件上传方法：移步我的站点--认证文件上传--custom/目录域名认证
					'),
					array('type'=>'switch','title'=>'微信支付','name'=>'wechat','help'=>'开启微信支付后，请将下面的支付授权目录填至微信公众平台；<br>(否则支付成功后：可能订单状态还是未支付)：<br>1,JSAPI支付授权目录：'.$account_tp.'<br> 2,扫码回调链接：'.$account_url),
					array('type'=>'switch','title'=>'微信H5支付','name'=>'wechat','help'=>'开启微信支付，同时就开启了H5支付，用以微信之外环境实现支付，需另外移步:微信商户平台->产品中心->产品大全->我的产品->H5支付配置的域名'),
					array('type'=>'switch','title'=>'充值余额时支持微信支付','name'=>'credit_wechat','show'=>array('wechat',0),'help'=>'当前开启【微信支付】时，此设置不生效！'),
					array('type'=>'radio','title'=>'微信支付类型','name'=>'wechat_type','options'=>'wechat_types','show'=>array('wechat',1),'help'=>'小程序支付参数，请分别在各自的小程序单独设置支付参数！'),
					array('type'=>'select','title'=>'选择支付公众号','name'=>'wechat_appid','options'=>'wechats','show'=>array('wechat'=>1,'wechat_type'=>0),'option_value'=>'appid'),
					array('type'=>'string','title'=>'微信支付商户号','name'=>'wechat_mchid','show'=>array('wechat'=>1,'wechat_type'=>array(0,2))),
					array('type'=>'string','title'=>'服务商appid','name'=>'wechat_appid','show'=>array('wechat'=>1,'wechat_type'=>1),'help'=>'主服务商appid'),
					array('type'=>'string','title'=>'服务商商户号','name'=>'wechat_mchid','show'=>array('wechat'=>1,'wechat_type'=>1),'help'=>'主服务商mch_id'),
					array('type'=>'select','title'=>'子商户公众号','name'=>'wechat_sub_appid','options'=>'wechats','show'=>array('wechat'=>1,'wechat_type'=>1),'option_value'=>'appid','help'=>'[<red>温馨提示</red>]:这边必须选择子商户的公众号，不能选择主公众号或其他普通公众号，子商户sub_appid配置流程：https://kf.qq.com/faq/190715yaYnYv1907153mmIbA.html'),
					array('type'=>'string','title'=>'子商户号','name'=>'wechat_sub_mchid','show'=>array('wechat'=>1,'wechat_type'=>1),'help'=>'子商户sub_mch_id'),
					array('type'=>'radio','title'=>'启用点金计划?','name'=>'wechat_dianjin','options'=>'wechat_dianjin','show'=>array('wechat'=>1,'wechat_type'=>1),'help'=>'启用点金计划（只有启用点金计划的，微信支付后页面才会出现跳转到《订单页面》的按钮）:准备教程：https://pay.weixin.qq.com/wiki/doc/apiv3_partner/open/pay/chapter3_5_2.shtml'),
					array('type'=>'string','title'=>'商户支付V2密钥','name'=>'wechat_miyue','show'=>array('wechat'=>1),'help'=>'如果是服务商支付，此处填写服务商支付APIv2密钥'),
					array('type'=>'string','title'=>'商户支付V3密钥','name'=>'wechat_miyuev3','show'=>array('wechat'=>1),'help'=>'可以不填：微信支付V3要用到，此处填写服务商支付APIv3密钥'),
					array('type'=>'string','title'=>'商户证书序列号','name'=>'wechat_serial_no','show'=>array('wechat'=>1),'help'=>'可以不填：微信支付V3要用到（微信商户后台--API证书--查看证书---证书序列号）'),
					array('type'=>'string','title'=>'微信支付证书序列号','name'=>'wechatpay_serial_no','show'=>array('wechat'=>1),'help'=>'可以不填：微信支付V3要用到（首次获取证书序列号，可以使用微信支付提供的证书下载工具，执行命令获取；有了序列号后，后期可以根据序列号更新平台证书！）'),
					array('type'=>'upfile','title'=>'CRET证书文件'.$cert_remark,'name'=>'cert_file','show'=>array('wechat',1),'help'=>'下载证书 cert.zip 解压后，上传 apiclient-cert.pem 文件。'),
					array('type'=>'upfile','title'=>'KEY密钥文件'.$key_remark,'name'=>'key_file','show'=>array('wechat',1),'help'=>'下载证书 cert.zip  解压后，上传 apiclient-key.pem 文件。'),	
					array('type'=>'upfile','title'=>'V3支付证书公钥文件','name'=>'paykey_file','show'=>array('wechat',1),'help'=>'使用微信支付提供的证书下载工具，执行命令获取；'),
			)),
			array(
				'title'=>'支付宝支付',
				'list'=>array(
					array('type'=>'tip','title'=>$alipaytip),
					array('type'=>'switch','title'=>'支付宝支付','name'=>'alipay','help'=>'如需开启支付宝支付，请前往支付宝开放平台，用支付宝账号登陆并创建应用，开通需要的功能，以获得相关参数；'),
					array('type'=>'switch','title'=>'微信环境关闭支付宝支付?','name'=>'alipay_wechat','help'=>'点开后，在微信环境下，不显示支付宝支付'),
					array('type'=>'string','title'=>'支付宝应用appid','name'=>'alipay_appid','show'=>array('alipay',1)),
					array('type'=>'text','title'=>'支付宝应用私钥','name'=>'alipay_private_key','show'=>array('alipay',1),'help'=>'支付宝开放平台创建应用成功后，进入应用设置应用加签方式，设置应用公钥。使用密钥生成器(工具安装：https://opendocs.alipay.com/open/291/105971#Krqvg，选择：RSA2，PKCS1(非JAVA适用))生成一对密钥，将私钥填至此处，将公钥填于支付宝开放平台！'),
					array('type'=>'text','title'=>'支付宝公钥','name'=>'alipay_public_key','show'=>array('alipay',1),'help'=>'成功设置应用私钥后，可以在同一个地方查看支付宝公钥，复制到此处！'),
			)),
			array(
				'title'=>'核销支付V1',
				'list'=>array(
					array('type'=>'tip','title'=>'自定义核销支付类型，比如上传支付凭证，来达到直接核销下单的目的！'),
					array('type'=>'switch','title'=>'开启自定义支付','name'=>'diypay','help'=>'如需开启支付宝支付，请前往支付宝开放平台，用支付宝账号登陆并创建应用，开通需要的功能，以获得相关参数'),
					array('type'=>'string','title'=>'自定义支付名称','name'=>'diypay_title','show'=>array('diypay',1)),
					array('type'=>'string','title'=>'自定义支付描述','name'=>'diypay_desc','show'=>array('diypay',1)),
					array('type'=>'switch','title'=>'显示指定收款账户？','name'=>'diypay_code','show'=>array('diypay',1)),
					array('type'=>'string','name'=>'diypay_name','title'=>'收款用户名','show'=>array('diypay_code',1)),
					array('type'=>'string','name'=>'diypay_number','title'=>'收款账号','show'=>array('diypay_code',1)),	
					array('type'=>'array','title'=>'提交核销表单','name'=>'diypay_fileds','add_tip'=>'添加一个字段（比如支付凭证，小票等）',
								'list'=>array(
									array('type'=>'string','name'=>'title','title'=>'字段名称'),	
									array('type'=>'radio','name'=>'type','title'=>'字段类型','options'=>'types'),	
									array('type'=>'radio','name'=>'ismust','title'=>'必填','options'=>'ismust'),	
									array('type'=>'string','name'=>'paixu','title'=>'排序'),	
									array('type'=>'string','name'=>'value','title'=>'选项信息'),	
								),
								'details'=>array(
									array('type'=>'string','name'=>'title','title'=>'字段名称'),	
									array('type'=>'radio','name'=>'type','title'=>'字段类型','options'=>'types'),
									array('type'=>'switch','name'=>'ismust','title'=>'必填','help'=>''),
									array('type'=>'string','name'=>'paixu','title'=>'排序','help'=>'从小到大顺序排序'),
									array('type'=>'string','name'=>'value','title'=>'选项信息','help'=>'单选和多选设置此条信息，选项之间以英文分号;隔开，例如:选项1;选项2;选项3'),
								)
					),
			)),
			array(
				'title'=>'核销支付V2',
				'list'=>array(
					array('type'=>'tip','title'=>'自定义核销支付类型，比如上传支付凭证，来达到直接核销下单的目的！'),
					array('type'=>'switch','title'=>'开启自定义支付','name'=>'diypay2','help'=>'如需开启支付宝支付，请前往支付宝开放平台，用支付宝账号登陆并创建应用，开通需要的功能，以获得相关参数'),
					array('type'=>'string','title'=>'自定义支付名称','name'=>'diypay2_title','show'=>array('diypay2',1)),
					array('type'=>'string','title'=>'自定义支付描述','name'=>'diypay2_desc','show'=>array('diypay2',1)),
					array('type'=>'switch','title'=>'显示指定收款账户？','name'=>'diypay2_code','show'=>array('diypay2',1)),
					array('type'=>'string','name'=>'diypay2_name','title'=>'收款用户名','show'=>array('diypay2_code',1)),
					array('type'=>'string','name'=>'diypay2_number','title'=>'收款账号','show'=>array('diypay2_code',1)),	
					array('type'=>'array','title'=>'提交核销表单','name'=>'diypay2_fileds','add_tip'=>'添加一个字段（比如支付凭证，小票等）',
								'list'=>array(
									array('type'=>'string','name'=>'title','title'=>'字段名称'),	
									array('type'=>'radio','name'=>'type','title'=>'字段类型','options'=>'types'),	
									array('type'=>'radio','name'=>'ismust','title'=>'必填','options'=>'ismust'),	
									array('type'=>'string','name'=>'paixu','title'=>'排序'),	
									array('type'=>'string','name'=>'value','title'=>'选项信息'),	
								),
								'details'=>array(
									array('type'=>'string','name'=>'title','title'=>'字段名称'),	
									array('type'=>'radio','name'=>'type','title'=>'字段类型','options'=>'types'),
									array('type'=>'switch','name'=>'ismust','title'=>'必填','help'=>''),
									array('type'=>'string','name'=>'paixu','title'=>'排序','help'=>'从小到大顺序排序'),
									array('type'=>'string','name'=>'value','title'=>'选项信息','help'=>'单选和多选设置此条信息，选项之间以英文分号;隔开，例如:选项1;选项2;选项3'),
								)
					),
			)),
			array(
				'title'=>'三方支付',
				'list'=>array(
					array('type'=>'tip','title'=>'启用后：点击三方支付，会跳转到第三方链接，注意：不会回调支付状态等'),
					array('type'=>'switch','title'=>'启用三方支付','name'=>'go2pay'),
					array('type'=>'string','title'=>'三方支付名称','name'=>'go2pay_title','show'=>array('go2pay',1)),
					array('type'=>'string','title'=>'三方支付描述','name'=>'go2pay_desc','show'=>array('go2pay',1)),
					array('type'=>'string','title'=>'三方支付地址','name'=>'go2pay_url','help'=>'http开头的完整地址'),
			)),
			/*array(
				'title'=>'银联支付',
				'list'=>array(
					array('type'=>'tip','title'=>''),
					array('type'=>'switch','title'=>'银联支付','name'=>'yinlian'),
					array('type'=>'text','title'=>'商户私钥证书','name'=>'yinlian_siyue','show'=>array('yinlian',1)),
					array('type'=>'string','title'=>'商户私钥证书密码','name'=>'yinlian_passwd','show'=>array('yinlian',1)),
					array('type'=>'string','title'=>'银联商户号','name'=>'yinlian_mchid','show'=>array('yinlian',1)),
			)),*/
			array(
				'title'=>'其他虚拟币',
				'list'=>array(
					array('type'=>'switch','title'=>'积分支持转账？','name'=>'credit1_zhuan'),
					array('type'=>'title','title'=>'金币设置'),
					array('type'=>'radio','title'=>'开启金币交易','name'=>'credit3','options'=>'credit_status'),
					array('type'=>'string','title'=>'金币重命名','name'=>'credit3_title','show'=>array('credit3'=>array(1,2))),
					array('type'=>'string','title'=>'金币交易抵扣比例','name'=>'credit3_rate','show'=>array('credit3'=>array(1)),'help'=>'默认1：1交易，填10表示：10：1交易（10个抵扣1元）'),
					array('type'=>'unitstring','unit'=>'%','title'=>'最大抵现比例','name'=>'credit3_dirate','show'=>array('credit3'=>array(1)),'help'=>'默认100%抵扣，如果填写50，表示最大抵扣订单额度的50%'),
					array('type'=>'switch','title'=>'金币支持转账？','name'=>'credit3_zhuan','show'=>array('credit3'=>array(1,2))),
					array('type'=>'switch','title'=>'金币支持充值？','name'=>'credit3_api','show'=>array('credit3'=>array(1,2))),
					array('type'=>'unitstring','unit'=>'个/元','title'=>'金币充值比例','name'=>'credit3_apirate','show'=>array('credit3_api'=>1),'help'=>'默认1：1交易，填10表示：10：1（1元充值10个）'),
					array('type'=>'title','title'=>'元宝设置'),
					array('type'=>'radio','title'=>'开启元宝交易','name'=>'credit4','options'=>'credit_status'),
					array('type'=>'string','title'=>'元宝重命名','name'=>'credit4_title','show'=>array('credit4'=>array(1,2))),
					array('type'=>'string','title'=>'元宝交易抵扣比例','name'=>'credit4_rate','show'=>array('credit4'=>array(1)),'help'=>'默认1：1交易，填10表示：10：1交易（10个抵扣1元）'),
					array('type'=>'unitstring','unit'=>'%','title'=>'最大抵现比例','name'=>'credit4_dirate','show'=>array('credit4'=>array(1)),'help'=>'默认100%抵扣，如果填写50，表示最大抵扣订单额度的50%'),
					array('type'=>'switch','title'=>'元宝支持转账？','name'=>'credit4_zhuan','show'=>array('credit4'=>array(1,2))),
					array('type'=>'switch','title'=>'元宝支持充值？','name'=>'credit4_api','show'=>array('credit4'=>array(1,2))),
					array('type'=>'unitstring','unit'=>'个/元','title'=>'元宝充值比例','name'=>'credit4_apirate','show'=>array('credit4_api'=>1),'help'=>'默认1：1交易，填10表示：10：1（1元充值10个）'),
					array('type'=>'title','title'=>'备用金设置'),
					array('type'=>'radio','title'=>'开启备用金交易','name'=>'credit5','options'=>'credit_status'),
					array('type'=>'string','title'=>'备用金重命名','name'=>'credit5_title','show'=>array('credit5'=>array(1,2))),
					array('type'=>'string','title'=>'备用金交易抵扣比例','name'=>'credit5_rate','show'=>array('credit5'=>array(1)),'help'=>'默认1：1交易，填10表示：10：1交易（10个抵扣1元）'),
					array('type'=>'unitstring','unit'=>'%','title'=>'最大抵现比例','name'=>'credit5_dirate','show'=>array('credit5'=>array(1)),'help'=>'默认100%抵扣，如果填写50，表示最大抵扣订单额度的50%'),
					array('type'=>'switch','title'=>'备用金支持转账？','name'=>'credit5_zhuan','show'=>array('credit5'=>array(1,2))),
					array('type'=>'switch','title'=>'备用金支持充值？','name'=>'credit5_api','show'=>array('credit5'=>array(1,2))),
					array('type'=>'unitstring','unit'=>'个/元','title'=>'备用金充值比例','name'=>'credit5_apirate','show'=>array('credit5_api'=>1),'help'=>'默认1：1交易，填10表示：10：1（1元充值10个）'),
					array('type'=>'title','title'=>'R币设置'),
					array('type'=>'radio','title'=>'开启R币交易','name'=>'credit6','options'=>'credit_status'),
					array('type'=>'string','title'=>'R币重命名','name'=>'credit6_title','show'=>array('credit6'=>array(1,2))),
					array('type'=>'string','title'=>'R币交易抵扣比例','name'=>'credit6_rate','show'=>array('credit6'=>array(1)),'help'=>'默认1：1交易，填10表示：10：1交易（10个抵扣1元）'),
					array('type'=>'unitstring','unit'=>'%','title'=>'最大抵现比例','name'=>'credit6_dirate','show'=>array('credit6'=>array(1)),'help'=>'默认100%抵扣，如果填写50，表示最大抵扣订单额度的50%'),
					array('type'=>'switch','title'=>'R币支持转账？','name'=>'credit6_zhuan','show'=>array('credit6'=>array(1,2))),
					array('type'=>'switch','title'=>'R币支持充值？','name'=>'credit6_api','show'=>array('credit6'=>array(1,2))),
					array('type'=>'unitstring','unit'=>'个/元','title'=>'R币充值比例','name'=>'credit6_apirate','show'=>array('credit6_api'=>1),'help'=>'默认1：1交易，填10表示：10：1（1元充值10个）'),
			)),
			/*array(
				'title'=>'快捷支付-线下版',
				'list'=>array(
					array('type'=>'switch','title'=>'开启快捷支付','name'=>'vip8pay'),
					array('type'=>'string','title'=>'门店ID','name'=>'vip8_shopid','help'=>'门店shopid，移步第三方平台https://vip.8173888.com/注册后，找第三方客服提供！'),
					array('type'=>'string','title'=>'门店密钥','name'=>'vip8_key','help'=>'门店密钥key'),
					array('type'=>'string','title'=>'商家应用ID','name'=>'vip8_uniacid','help'=>'商家应用uniacid'),
					array('type'=>'string','title'=>'商家组ID','name'=>'vip8_groupid','help'=>'商家组groupid'),
			)),*/
		)
	);
	$jy_allinpay = check_permission('jy_allinpay');
	if($jy_allinpay){
        $allinpay_url=str_replace('http://','',$account_host).'addons/jy_allinpay/notify.php';
		$htmls['edits'][]=array(
				'title'=>'通联支付',
				'list'=>array(
					array('type'=>'tip','title'=>'通联支付-H5收银台：https://aipboss.allinpay.com/know/devhelp/main.php?pid=38
					</br>第一步，向业务人员申请商户号。
					</br>第二步，登录商服后台https://vsp.allinpay.com/login配置相关参数。
					</br>回调地址：'.$allinpay_url.'
					'),
					array('type'=>'radio','title'=>'优先方式','name'=>'allinpay_showtype','options'=>'allinpay_showtype','help'=>'优先其他支付：其他支付方式没有的，才显示通联支付类型；优先通联支付：如果通联支付有的，就优先使用通联支付的支付类型！'),
					//array('type'=>'switch','title'=>'开启通联支付','name'=>'allinpay'),
					array('type'=>'string','title'=>'集团商户号','name'=>'allinpay_orgid','help'=>'共享集团号参数时必填'),
					array('type'=>'string','title'=>'商户号','name'=>'allinpay_cusid','help'=>'实际交易商户号;'),
					array('type'=>'string','title'=>'应用ID','name'=>'allinpay_appid','help'=>'平台分配的APPID'),
					//array('type'=>'string','title'=>'应用MD5密钥','name'=>'allinpay_key','help'=>'配置时：选择MD5加密格式；获取MD5密钥'),
					array('type'=>'text','title'=>'RSA私钥(PKCS1格式，非JAVA适用)','name'=>'allinpay_rsakey'),
					array('type'=>'text','title'=>'RSA通联公钥','name'=>'allinpay_pubkey','help'=>'验签用通联公钥，不是商户公钥;'),
					array('type'=>'checkbox','title'=>'支付支持类型','name'=>'allinpay_pay_types','options'=>'allinpay_types','help'=>'务必前往通联支付：开通相应的支付'),
		));
	}else{
		$return['item']['allinpay']=0;
	}
	$jy_adapay = check_permission('jy_adapay');
	if($jy_adapay){
        $adapay_url=str_replace('http://','',$account_host).'addons/jy_adapay/notify.php';
		$htmls['edits'][]=array(
				'title'=>'聚合支付',
				'list'=>array(
					array('type'=>'tip','title'=>'前往聚合支付：https://console.adapay.tech/merconsole/agent/manage
					</br>回调地址：'.$adapay_url.'
					'),
					array('type'=>'radio','title'=>'优先方式','name'=>'adapay_showtype','options'=>'adapay_showtype','help'=>'优先其他支付：其他支付方式没有的，才显示聚合的支付类型；优先聚合支付：如果聚合支付有的，就优先使用聚合支付的支付类型！'),
					array('type'=>'string','title'=>'应用ID','name'=>'adapay_appid','help'=>'创建应用的APPID'),
					array('type'=>'string','title'=>'快捷支付银行卡标识','name'=>'adapay_token_no','help'=>'Adapay生成的银行卡唯一标识'),
					array('type'=>'string','title'=>'mock模式APIKEY','name'=>'adapay_key_test','help'=>'前往聚合支付：https://console.adapay.tech/merconsole/agent/manage 「控制台」 ->「商户信息管理」->「证书管理」'),
					array('type'=>'string','title'=>'prod模式APIKEY','name'=>'adapay_key_live','help'=>'前往聚合支付：https://console.adapay.tech/merconsole/agent/manage 「控制台」 ->「商户信息管理」->「证书管理」'),
					array('type'=>'text','title'=>'商户RSA私钥','name'=>'adapay_private_key','help'=>'通过工具获得的私钥保存到本地；另外一个公钥，保存到聚合支付--证书【商户RSA公钥】'),
					array('type'=>'text','title'=>'Adapay RSA公钥','name'=>'adapay_public_key','help'=>'前往聚合支付：https://console.adapay.tech/merconsole/agent/manage 「控制台」 ->「商户信息管理」->「证书管理」'),
					array('type'=>'checkbox','title'=>'聚合支付支持类型','name'=>'adapay_pay_types','options'=>'pay_types','help'=>'务必前往聚合支付：开通相应的支付'),
		));
	}else{
		$return['item']['adapay_showtype']=0;
	}
	$jy_hnapay = check_permission('jy_hnapay');
	if($jy_hnapay){
        $hnpay_url=str_replace('http://','',$account_host).'addons/jy_hnpay/notify.php';
		$jy_hnapay=plugin('jy_hnapay')->plugin_setting('basic');
		$return['item']['hnapay_merid']=$jy_hnapay['merid'];
		$return['item']['hnapay_PrivateKey']=$jy_hnapay['PrivateKey'];
		$return['item']['hnapay_PublicKey']=$jy_hnapay['PublicKey'];
		$return['item']['hnapay_HnapayExpPublicKey']=$jy_hnapay['HnapayExpPublicKey'];
		$htmls['edits'][]=array(
				'title'=>'新生支付',
				'list'=>array(
					array('type'=>'tip','title'=>'新生支付登录：https://auth.hnapay.com/
					</br>回调地址：'.$hnpay_url.'
					'),
					array('type'=>'switch','title'=>'开启新生支付','name'=>'hnapay'),
					array('type'=>'string','title'=>'商户ID','name'=>'hnapay_merid','help'=>'商户后台获取'),
					array('type'=>'upfile','title'=>'商户加密私钥','name'=>'hnapay_PrivateKey','help'=>'安全中心，新收款密钥下载;例如：XXXX_PrivateKey_10.pem;'),
					array('type'=>'upfile','title'=>'商户加密公钥','name'=>'hnapay_PublicKey','help'=>'安全中心，新收款密钥下载;例如：XXXX_PublicKey_10.pem;'),
					array('type'=>'upfile','title'=>'快捷类新生公钥','name'=>'hnapay_HnapayExpPublicKey','help'=>'安全中心，新收款密钥下载;例如：HnapayExpPublicKey.pem;'),
		));
	}else{
		$return['item']['hnapay']=0;
	}
	$jy_sandpay = check_permission('jy_sandpay');
	if($jy_sandpay){
        $sandpay_url=str_replace('http://','',$account_host).'addons/jy_sandpay/notify.php';
        $sandpay_file=str_replace('http://','',$account_host).'custom/';
		$htmls['edits'][]=array(
				'title'=>'杉德支付',
				'list'=>array(
					array('type'=>'tip','title'=>'前往杉德支付：https://www.sandpay.com.cn/
                    </br>授权目录：'.$sandpay_file.'
					</br>回调地址：'.$sandpay_url.'
					'),
					array('type'=>'radio','title'=>'优先方式','name'=>'sandpay_showtype','options'=>'sandpay_showtype','help'=>'优先其他支付：其他支付方式没有的，才显示杉德的支付类型；优先杉德支付：如果杉德支付有的，就优先使用杉德支付的支付类型！'),
					array('type'=>'string','title'=>'商户号','name'=>'sandpay_mid','help'=>'杉德支付：后台获取，收款方商户号'),
					array('type'=>'string','title'=>'私钥证书密码','name'=>'sandpay_key','help'=>'杉德支付：后台获取'),
					array('type'=>'upfile','title'=>'私钥文件','name'=>'sandpay_private','help'=>'示例：MID_RSA_PRIVATE_KEY_XXXXXXXX_new.pfx；正式环境的公、私钥，是从cfca中下载的，下载步骤可参考（开户信邮件附件，如果没有收到，联调群里要）'),
					array('type'=>'upfile','title'=>'公钥文件','name'=>'sandpay_public','help'=>'示例：sand.cer；正式环境中公钥使用杉德公钥sand.cer（如果没找到，联调群里要），私钥使用下载的私钥'),
                    array('type'=>'string','title'=>'MD5KEY','name'=>'sandpay_md5key','help'=>'联系客户获取：key对应商户私钥通过安卓APK工具解析出来的MD5KEY'),
                    array('type'=>'string','title'=>'KEY1','name'=>'sandpay_key1','help'=>'联系客户获取：key对应商户私钥通过安卓APK工具解析出来的KEY1'),
                    array('type'=>'string','title'=>'KEY2','name'=>'sandpay_key2','help'=>'联系客户获取：key对应商户私钥通过安卓APK工具解析出来的KEY2'),
                    array('type'=>'string','title'=>'河马商户号','name'=>'sandpay_hmmid','help'=>'河马商户号：https://hmpay.sandpay.com.cn/后台获取，收款方商户号'),
                    array('type'=>'string','title'=>'河马平台公钥','name'=>'sandpay_hmkey','help'=>'河马商户号：https://hmpay.sandpay.com.cn/后台获取，收款方商户号'),
                    array('type'=>'text','title'=>'河马商户RSA私钥','name'=>'sandpay_rsa_key','help'=>'使用RSA密钥工具，生成一组商户公钥和私钥(密钥格式RSA，长度1024，PKCS8或PKCS1)；建议密钥工具：https://opendocs.alipay.com/mini/02c7i5'),
                    array('type'=>'string','title'=>'小程序ID','name'=>'sandpay_wxappid','help'=>'用户非微信环境下实现微信政支付'),
                    array('type'=>'string','title'=>'小程序云开发环境 ID','name'=>'sandpay_env','help'=>'用户非微信环境下实现微信政支付，需要微信开发工具，发布获取！'),
					array('type'=>'checkbox','title'=>'支付支持类型','name'=>'sandpay_pay_types','options'=>'sandpay_types','help'=>'务必前往杉德支付：开通相应的支付'),
		));
	}else{
		$return['item']['sandpay_showtype']=0;
	}
	$jy_zwechat = check_permission('jy_zwechat');
	if($jy_zwechat){
        $sandpay_url=str_replace('http://','',$account_host).'addons/jy_zwechat/notify.php';
        $sandpay_file=str_replace('http://','',$account_host).'custom/';
		$htmls['edits'][]=array(
				'title'=>'合码通支付',
				'list'=>array(
					array('type'=>'tip','title'=>'前往合码通支付：https://www.zwechat.com/
                    </br>授权目录：'.$sandpay_file.'
					</br>回调地址：'.$sandpay_url.'
					'),
					array('type'=>'radio','title'=>'优先方式','name'=>'zwechat_showtype','options'=>'zwechat_showtype','help'=>'优先其他支付：其他支付方式没有的，才显示合码通的支付类型；优先合码通支付：如果合码通支付有的，就优先使用合码通支付的支付类型！'),
					array('type'=>'string','title'=>'商户编号','name'=>'zwechat_mid','help'=>'合码通支付：后台获取，商户编号'),
					array('type'=>'string','title'=>'终端号','name'=>'zwechat_tid','help'=>'合码通支付：后台获取，终端号'),
					array('type'=>'string','title'=>'接口密钥','name'=>'zwechat_key','help'=>'合码通支付：后台获取'),
		));
	}else{
		$return['item']['zwechat_showtype']=0;
	}
	$jy_icbcpay = check_permission('jy_icbcpay');
	if($jy_icbcpay){
        $sandpay_url=str_replace('http://','',$account_host).'addons/jy_icbcpay/notify.php';
        $sandpay_file=str_replace('http://','',$account_host).'custom/';
		$htmls['edits'][]=array(
				'title'=>'工行支付',
				'list'=>array(
					array('type'=>'tip','title'=>'前往工行聚富通支付：https://open.icbc.com.cn/icbc/apip
                    </br>授权目录：'.$sandpay_file.'
					</br>回调地址：'.$sandpay_url.'
					'),
					array('type'=>'radio','title'=>'优先方式','name'=>'icbcpay_showtype','options'=>'icbcpay_showtype','help'=>'优先其他支付：其他支付方式没有的，才显示工行聚富通的支付类型；优先工行聚富通支付：如果工行聚富通支付有的，就优先使用工行聚富通支付的支付类型！'),
					array('type'=>'string','title'=>'APP的编号','name'=>'icbcpay_appid','help'=>'聚富通支付：后台获取（https://open.icbc.com.cn/icbc/apip），APP的编号,应用在API开放平台注册时生成'),
					array('type'=>'string','title'=>'商户编号','name'=>'icbcpay_merchid','help'=>'收方商户编号，联系工行获取'),
					array('type'=>'text','title'=>'商户公钥','name'=>'icbcpay_public','help'=>'从分行获取网关公钥，用此对收到的银行支付结果通知进行解密验签'),
		));
	}else{
		$return['item']['icbcpay_showtype']=0;
	}
	$jy_heepay = check_permission('jy_heepay');
	if($jy_heepay){
        $sandpay_url=str_replace('http://','',$account_host).'addons/jy_heepay/notify.php';
        $sandpay_file=str_replace('http://','',$account_host).'custom/';
		$htmls['edits'][]=array(
				'title'=>'汇付宝',
				'list'=>array(
					array('type'=>'tip','title'=>'前往汇付宝快捷支付：https://www.heepay.com/
                    </br>授权目录：'.$sandpay_file.'
					</br>回调地址：'.$sandpay_url.'
					'),
					array('type'=>'radio','title'=>'优先方式','name'=>'heepay_showtype','options'=>'heepay_showtype','help'=>'优先其他支付：其他支付方式没有的，才显示汇付宝的支付类型；优先汇付宝支付：如果汇付宝支付有的，就优先使用汇付宝的支付类型！'),
					array('type'=>'string','title'=>'商户编号','name'=>'heepay_merchid','help'=>'收方商户编号，联系客服获取'),
					array('type'=>'text','title'=>'商户私钥','name'=>'heepay_private','help'=>'从分行获取网关私钥，用此对收到的银行支付结果通知进行解密验签'),
					array('type'=>'text','title'=>'汇付宝公钥','name'=>'heepay_public','help'=>'从分行获取网关公钥，用此对收到的银行支付结果通知进行解密验签'),
		));
	}else{
		$return['item']['heepay_showtype']=0;
	}
	$jy_huifuapi = check_permission('jy_huifuapi');
	if($jy_huifuapi){
        $sandpay_url=str_replace('http://','',$account_host).'addons/jy_huifuapi/notify.php';
        $sandpay_file=str_replace('http://','',$account_host).'custom/';
		$htmls['edits'][]=array(
				'title'=>'汇付天下',
				'list'=>array(
					array('type'=>'tip','title'=>'前往汇付天下：https://paas.huifu.com/
                    </br>授权目录：'.$sandpay_file.'
					</br>回调地址：'.$sandpay_url.'
					'),
					array('type'=>'radio','title'=>'优先方式','name'=>'huifuapi_showtype','options'=>'huifuapi_showtype','help'=>'优先其他支付：其他支付方式没有的，才显示汇付天下的支付类型；优先汇付天下支付：如果汇付天下支付有的，就优先使用汇付天下的支付类型！'),
					array('type'=>'string','title'=>'商户sysid','name'=>'huifuapi_sysid','help'=>'后台-开放设置--参数信息'),
					array('type'=>'string','title'=>'商户productid','name'=>'huifuapi_productid','help'=>'后台-开放设置--参数信息'),
					array('type'=>'text','title'=>'商户私钥','name'=>'huifuapi_private','help'=>'后台-开放设置--密钥管理创建密钥，然后到后台-开放设置--参数信息，查看复制'),
					array('type'=>'text','title'=>'汇付公钥','name'=>'huifuapi_public','help'=>'后台-开放设置--密钥管理创建密钥，然后到后台-开放设置--参数信息，查看复制'),
		));
	}else{
		$return['item']['huifuapi_showtype']=0;
	}
	$return['pay_types']=array(
		'alipay_url'=>'支付宝支付',
		'wechat'=>'微信支付',
		'union_wap'=>'银联云闪付',
		'union_online'=>'银联H5支付',
		'fast_pay'=>'快捷支付',
	);
	$return['sandpay_types']=array(
		'alipay_url'=>'支付宝支付',
		'wechat'=>'微信支付',
		'union_online'=>'银联H5支付',
	);
	$return['allinpay_types']=array(
		'alipay_url'=>'支付宝支付',
		'wechat'=>'微信支付',
		'union_online'=>'银联H5支付',
	);
	$return['zwechat_types']=array(
		'alipay_url'=>'支付宝支付',
		'wechat'=>'微信支付',
	);
	$return['wechat_dianjin']=array(
		'0'=>'默认',
		'1'=>'开启',
		'2'=>'关闭',
	);
	$return['allinpay_showtype']=array(0=>'不使用通联支付',1=>'优先其他支付',2=>'优先通联支付',3=>'仅使用通联支付');
	$return['adapay_showtype']=array(0=>'不使用聚合支付',1=>'优先其他支付',2=>'优先聚合支付',3=>'仅使用聚合支付');
	$return['sandpay_showtype']=array(0=>'不使用杉德支付',1=>'优先其他支付',2=>'优先杉德支付',3=>'仅使用杉德支付');
	$return['zwechat_showtype']=array(0=>'不使用合码通',1=>'优先其他支付',2=>'优先合码通',3=>'仅使用合码通');
	$return['icbcpay_showtype']=array(0=>'不使用工行聚富通',1=>'优先其他支付',2=>'优先工行聚富通',3=>'仅使用工行聚富通');
	$return['heepay_showtype']=array(0=>'不使用汇付宝',1=>'优先其他支付',2=>'优先汇付宝',3=>'仅使用汇付宝');
	$return['huifuapi_showtype']=array(0=>'不使用汇付天下',1=>'优先其他支付',2=>'优先汇付天下',3=>'仅使用汇付天下');
	$return['credit_status']=array(0=>'不启用',1=>'启用交易',2=>'只显示不能交易');
	$return['ismust']=array(0=>'非必填',1=>'必填');
	$return['htmls']=$htmls;
	exi($return);
}
if($_RQ['op']=='post'){
	$postdata=get_postdata();
	//检查关键参数是否设置
	if($postdata['wechat'] && $postdata['wechat_type']!=2 && !$postdata['wechat_mchid']){
			exi('请设置微信支付商户号','error');
	}
	if($postdata['wechat'] && $postdata['wechat_type']!=2 && !$postdata['wechat_appid']){
			exi('选择微信支付公众号（借用的公众号不可以的哦！）','error');
	}
	if($postdata['wechat'] && $postdata['wechat_type']!=2 && !$postdata['wechat_miyue']){
			exi('请设置微信商户支付密钥','error');
	}
	if($postdata['wechat'] && $postdata['wechat_type']==1 && !$postdata['wechat_sub_mchid']){
			exi('请设置微信子商户号','error');
	}
	if($postdata['wechat'] && $postdata['wechat_dianjin']==1 && (!$postdata['wechat_miyuev3'] || !$postdata['wechatpay_serial_no'])){
			exi('启用点击计划，务必配置好V3参数商户支付V3密钥,微信支付证书序列号','error');
	}
	$jy_allinpay = check_permission('jy_allinpay');
	if($jy_allinpay){
		$allinpaydata=plugin('jy_allinpay')->plugin_setting('basic');
		$allinpaydata['orgid']=$postdata['allinpay_orgid'];
		$allinpaydata['cusid']=$postdata['allinpay_cusid'];
		$allinpaydata['appid']=$postdata['allinpay_appid'];
		$allinpaydata['key']=$postdata['allinpay_key'];
		$allinpaydata['rsakey']=$postdata['allinpay_rsakey'];
		plugin('jy_allinpay')->plugin_setting('basic',$allinpaydata);
	}
	$jy_hnapay = check_permission('jy_hnapay');
	if($jy_hnapay){
		$hnapaydata=plugin('jy_hnapay')->plugin_setting('basic');
		$hnapaydata['merid']=$postdata['hnapay_merid'];
		$hnapaydata['PrivateKey']=$postdata['hnapay_PrivateKey'];
		$hnapaydata['PublicKey']=$postdata['hnapay_PublicKey'];
		$hnapaydata['HnapayExpPublicKey']=$postdata['hnapay_HnapayExpPublicKey'];
		plugin('jy_hnapay')->plugin_setting('basic',$hnapaydata);
	}
	if(strpos($postdata['cert_file'],SITEROOT) === false){
		$data=cfc('files')->source_read($postdata['cert_file']);
		cfc('files')->source_del($postdata['cert_file']);
		cfc('files')->mkdirs(ROOT_AT."certs/{$_SESSION['uniacid']}");
		$cert_file=ROOT_AT."certs/{$_SESSION['uniacid']}/{$postdata['wechat_mchid']}_cert.pem";
		file_put_contents($cert_file,$data);
		unset($postdata['cert_file']);
	}
	if(strpos($postdata['key_file'],SITEROOT) === false){
		$data=cfc('files')->source_read($postdata['key_file']);
		cfc('files')->source_del($postdata['key_file']);
		cfc('files')->mkdirs(ROOT_AT."certs/{$_SESSION['uniacid']}");
		$key_file=ROOT_AT."certs/{$_SESSION['uniacid']}/{$postdata['wechat_mchid']}_key.pem";
		file_put_contents($key_file,$data);
		unset($postdata['key_file']);
	}
	if(strpos($postdata['paykey_file'],SITEROOT) === false){
		$data=cfc('files')->source_read($postdata['paykey_file']);
		cfc('files')->source_del($postdata['paykey_file']);
		cfc('files')->mkdirs(ROOT_AT."certs/{$_SESSION['uniacid']}");
		$paykey_file=ROOT_AT."certs/{$_SESSION['uniacid']}/{$postdata['wechat_mchid']}_paypublic_key.pem";
		file_put_contents($paykey_file,$data);
		unset($postdata['paykey_file']);
	}
	uni_setting('pay',$postdata);
	if($postdata['wechatpay_serial_no']){
		cfc('wechat_pay')->certificates();
	}
	if($postdata['wechat'] && $postdata['wechat_type']==1 && $postdata['wechat_sub_mchid'] && $postdata['wechat_dianjin']){
		cfc('wechat_pay')->opendianjin($postdata['wechat_sub_mchid'],$postdata['wechat_dianjin']);
	}
	exi('设置成功！');
}